 
; (* OMAR *)

; ROM  (L0)

  100 TO B TO H
  180 TO C TO G
  235 TO F TO D
  256 TO E
  -100 TO J TO P
  -180 TO K TO O
  -235 TO L TO N
  -256 TO M
  4 TO Q
  GOTO 87

; TURN (L25)

  0 TO SPEEDX TO SPEEDY
  IF Z=1 GOTO 87

;       (L31)

  405/2+R TO AIM
  
;       (L35)

  AIM TO R
  R/45*2+1 TO INDEX
  DATA TO S
  INDEX+12 TO INDEX
  IF INDEX>16 INDEX-16 TO INDEX
  IF Z=0 GOTO 132
  0 TO Z

; MOVE  (L57)

  S TO SPEEDX
  DATA TO SPEEDY
  Z+1 TO Z
  R+Q TO AIM TO RADAR
  IF RADAR<0 GOTO 101
  IF RADAR<100 GOTO 25
  AIM+180 TO AIM TO RADAR
  IF RADAR<0 20-RADAR TO SHOT
  0-Q TO Q
  GOTO 57

; SHIFT  (L87)

  225 TO R
  IF X<128 135 TO R
  IF Y>128 180-R TO R
  R TO AIM
  GOTO 35

; FIRE ROUTINES

;  (L101)

  0 TO SPEEDX TO SPEEDY
  0-RADAR TO SHOT
  IF Z=1 GOTO 111
  GOTO 31

;  (L111)

  AIM TO RADAR
  IF RADAR>0 GOTO 57
  0-RADAR TO SHOT
  GOTO 111

;  (L120)

  0-RADAR TO SHOT
  IF DAMAGE<100 GOTO 57
  AIM TO RADAR
  IF RADAR>0 GOTO 142
  GOTO 120

; SIT  (L132)

  AIM+W TO AIM TO RADAR
  IF RADAR<0 GOTO 120
  IF DAMAGE<100 GOTO 57

;     (L142)

  100/RADAR*12 TO W
  GOTO 132
